home *** CD-ROM | disk | FTP | other *** search
- # Top-level script fragment to build everything for MPW.
-
- Set savedir "`Directory`"
-
- #Set Echo 1
-
- Set ThisScript "{0}"
-
- Set objdir ":"
-
- Set verify 0
-
- Set BuildTarget "none"
-
- # Parse arguments.
-
- Loop
- Break If {#} == 0
- If "{BuildTarget}" =~ /none/
- Set BuildTarget "{1}"
- Else
- Echo Only one build target allowed, ignoring "{1}"
- End If
- Shift 1
- End Loop
-
- If "{BuildTarget}" =~ /none/
- Set BuildTarget "all"
- End If
-
- If {verify} == 1
- Echo "#" Doing "{ThisScript}" "{BuildTarget}" in "`Directory`" ...
- End If
-
- Set ranmake 0
-
- If "`Exists Makefile`" != ""
- Echo "Set Echo 1" >{BuildTarget}.makeout
- Make -f Makefile {BuildTarget} >>{BuildTarget}.makeout
- {BuildTarget}.makeout
- Delete {BuildTarget}.makeout
- Set ranmake 1
- End If
-
- If "`Exists Makefile.PPC`" != ""
- Echo "Set Echo 1" >{BuildTarget}.makeout.ppc
- Make -f Makefile.PPC {BuildTarget} >>{BuildTarget}.makeout.ppc
- {BuildTarget}.makeout.ppc
- Delete {BuildTarget}.makeout.ppc
- Set ranmake 1
- End If
-
- If {ranmake} == 1
- Exit
- End If
-
- # Dispatch on various pseudo-targets.
-
- If "{BuildTarget}" =~ /all/
- Echo Started `Date`
- "{ThisScript}" all-gcc
- "{ThisScript}" all-ld
- "{ThisScript}" all-gdb
- Echo Finished `Date`
- Else If "{BuildTarget}" =~ /all-libiberty/
- "{ThisScript}" do-libiberty
- Else If "{BuildTarget}" =~ /all-bfd/
- "{ThisScript}" do-bfd
- Else If "{BuildTarget}" =~ /all-opcodes/
- "{ThisScript}" do-opcodes
- Else If "{BuildTarget}" =~ /all-byacc/
- "{ThisScript}" do-byacc
- Else If "{BuildTarget}" =~ /all-flex/
- "{ThisScript}" all-libiberty
- "{ThisScript}" do-flex
- Else If "{BuildTarget}" =~ /all-binutils/
- "{ThisScript}" all-libiberty
- "{ThisScript}" all-bfd
- "{ThisScript}" all-opcodes
- "{ThisScript}" do-binutils
- Else If "{BuildTarget}" =~ /all-gas/
- "{ThisScript}" all-libiberty
- "{ThisScript}" all-bfd
- "{ThisScript}" all-opcodes
- "{ThisScript}" do-gas
- Else If "{BuildTarget}" =~ /all-gcc/
- "{ThisScript}" all-libiberty
- "{ThisScript}" all-gas
- "{ThisScript}" all-binutils
- "{ThisScript}" do-gcc
- Else If "{BuildTarget}" =~ /all-gdb/
- "{ThisScript}" all-libiberty
- "{ThisScript}" all-bfd
- "{ThisScript}" all-opcodes
- "{ThisScript}" do-gdb
- Else If "{BuildTarget}" =~ /all-grez/
- "{ThisScript}" all-libiberty
- "{ThisScript}" all-bfd
- "{ThisScript}" do-grez
- Else If "{BuildTarget}" =~ /all-ld/
- "{ThisScript}" all-libiberty
- "{ThisScript}" all-bfd
- "{ThisScript}" all-opcodes
- "{ThisScript}" do-ld
- Else If "{BuildTarget}" =~ /do-byacc/
- SetDirectory :byacc:
- ::mpw-build all
- Else If "{BuildTarget}" =~ /do-flex/
- SetDirectory :flex:
- ::mpw-build _bootstrap
- ::mpw-build all
- Else If "{BuildTarget}" =~ /do-bfd/
- SetDirectory :bfd:
- ::mpw-build all
- Else If "{BuildTarget}" =~ /do-libiberty/
- SetDirectory :libiberty:
- ::mpw-build all
- Else If "{BuildTarget}" =~ /do-opcodes/
- SetDirectory :opcodes:
- ::mpw-build all
- Else If "{BuildTarget}" =~ /do-binutils/
- SetDirectory :binutils:
- ::mpw-build stamps
- ::mpw-build all
- Else If "{BuildTarget}" =~ /do-gas/
- SetDirectory :gas:
- ::mpw-build stamps
- ::mpw-build all
- Else If "{BuildTarget}" =~ /do-gcc/
- SetDirectory :gcc:
- :mpw-build all
- Else If "{BuildTarget}" =~ /do-gdb/
- SetDirectory :gdb:
- ::mpw-build all
- Else If "{BuildTarget}" =~ /do-grez/
- SetDirectory :grez:
- ::mpw-build all
- Else If "{BuildTarget}" =~ /do-ld/
- SetDirectory :ld:
- ::mpw-build all
- Else If "{BuildTarget}" =~ /do-newlib/
- SetDirectory :newlib:
- ::mpw-build all
- Else If "{BuildTarget}" =~ /install/
- "{ThisScript}" install-binutils
- "{ThisScript}" install-gas
- "{ThisScript}" install-gcc
- "{ThisScript}" install-ld
- "{ThisScript}" install-gdb
- Else If "{BuildTarget}" =~ /install-binutils/
- SetDirectory :binutils:
- ::mpw-build install
- Else If "{BuildTarget}" =~ /install-gas/
- SetDirectory :gas:
- ::mpw-build install
- Else If "{BuildTarget}" =~ /install-gcc/
- SetDirectory :gcc:
- :mpw-build install
- Else If "{BuildTarget}" =~ /install-gdb/
- SetDirectory :gdb:
- ::mpw-build install
- Else If "{BuildTarget}" =~ /install-grez/
- SetDirectory :grez:
- ::mpw-build install
- Else If "{BuildTarget}" =~ /install-ld/
- SetDirectory :ld:
- ::mpw-build install
- Else If "{BuildTarget}" =~ /install-only/
- "{ThisScript}" install-only-binutils
- "{ThisScript}" install-only-gas
- "{ThisScript}" install-only-gcc
- "{ThisScript}" install-only-gdb
- "{ThisScript}" install-only-ld
- Else If "{BuildTarget}" =~ /install-only-binutils/
- SetDirectory :binutils:
- ::mpw-build install-only
- Else If "{BuildTarget}" =~ /install-only-gas/
- SetDirectory :gas:
- ::mpw-build install-only
- Else If "{BuildTarget}" =~ /install-only-gcc/
- SetDirectory :gcc:
- :mpw-build install-only
- Else If "{BuildTarget}" =~ /install-only-gdb/
- SetDirectory :gdb:
- ::mpw-build install-only
- Else If "{BuildTarget}" =~ /install-only-grez/
- SetDirectory :grez:
- ::mpw-build install-only
- Else If "{BuildTarget}" =~ /install-only-ld/
- SetDirectory :ld:
- ::mpw-build install-only
- Else
- Echo {BuildTarget} not understood, ignoring
- End If
-
- SetDirectory "{savedir}"
-